package com.tiancheng.trade.order.vo.open.order;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.time.LocalDateTime;
import java.util.List;

/**
 * @ClassName OpenQueryOrderInfoVo
 * @Description 查询订单信息
 * @Author kellen
 * @Date 2024/11/24 23:01
 */
@Data
public class OpenQueryOrderInfoResVo {

    /**
     * 主订单号
     */
    private String orderId;
    /**
     * 原始订单号
     */
    private String originalOrderId;
    /**
     * 支付订单号
     */
    private String paymentId;
    /**
     * 支付流水号
     */
    private String flowId;
    /**
     * 用户id
     */
    private String uid;
    /**
     * 电话
     */
    private String mobile;
    /**
     * 支付渠道用户标识
     */
    private String openid;
    /**
     * 业务渠道来源
     */
    private String orderSource;
    /**
     * 订单类型
     */
    private String orderType;
    /**
     * 订单名称
     */
    private String orderName;
    /**
     * 订单状态
     */
    private String orderStatus;
    /**
     * 订单应收金额
     */
    private Integer orderAmount;
    /**
     * 下单场景
     */
    private String orderScene;
    /**
     * 支付状态
     */
    private String payStatus;
    /**
     * 订单支付总金额
     */
    private Integer payAmount;
    /**
     * 支付过期时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime payExpiryTime;
    /**
     * 支付时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime payTime;
    /**
     * 支付场景
     */
    private String payScene;
    /**
     * 支付渠道类型
     */
    private String payChannel;
    /**
     * 支付方式（微信、支付宝、银联）
     */
    private String payWay;
    /**
     * 交易信息
     */
    private String tradeInfo;
    /**
     * 是否有优惠，1-是
     */
    private Integer isCoupon;
    /**
     * 优惠金额
     */
    private Integer discount;

    /**
     * 备注
     */
    private String remark;

    /**
     * 是否测试订单
     */
    private Integer isTest;
    /**
     * 子订单个数
     */
    private Integer subOrderCnt;
    /**
     * 退款次数
     */
    private Integer refundTimes;
    /**
     * appid
     */
    private String appId;
    /**
     * 请求ip
     */
    private String ip;
    /**
     * 推广码
     */
    private String generalizeCode;
    /**
     * 微信优惠信息
     */
    private String goodsTag;

    /**
     * 支付订单人uid
     */
    private String buyerUid;

    /**
     * 三方应用id
     */
    private String clientId;
    /**
     * 业务编码
     */
    private String businessCode;
    /**
     * 机构编码
     */
    private String organizationCode;
    /**
     * 支付剩余时间，单位：S
     */
    private Long payLeftSecond;

    /**
     * 子订单信息
     */
    private List<OpenQueryOrderInfoResSubOrderVo> subOrders;

}
